![]() |
![]() |
|
Pisanje in popravljanje programaRazsute kartice1. podnalogaVčasih so računalniške programe pisali na kartice. Na vsaki kartici je bil en stavek. Ni bilo redko, da se je kdo spotaknil ter stresel šop kartic. Program je bilo treba ponovno urediti. Sedaj imamo podoben problem. Virus je v naši datoteki premešal vrstice. Program bi moral podane sekunde spremeniti v dneve, ure, minute in sekunde.
Uredite vrstice tako, da bo program smiselno deloval. Uradna rešitev# preberemo podatke print('Program bo spremenil sekunde v dneve, ure, minute in sekunde.') sek_zacasne = int(input('Vnesi sekunde: ')) sekunde = sek_zacasne % 60 # ostanek od deljenja s 60 so sekunde min_zacasne = sek_zacasne // 60 # celi del deljenja so vse minute minute = min_zacasne % 60 # ostanek od deljenja s 60 so minute ostalo že ure ure_zacasne = min_zacasne // 60 # celi del od deljenja s 60 so vse ure ure = ure_zacasne % 24 # ostanek od deljenja s 24 so ure ostalo dnevi dnevi = ure_zacasne // 24 # celi del deljenja s 24 so dnevi # izpišemo rezultat print(sek_zacasne,'sekund je natanko',dnevi, 'dni,', ure, 'ur,', minute, 'minut in', sekunde,'sekund.') HišnikHišnik mora vsak mesec očistiti bazen. Da ga lahko očisti, mora najprej
iz njega izčrpati vodo. Ker je bolj lene sorte, bi med iztekanjem
vode, ki traja kar nekaj časa, raje odšel v bližnjo kavarno na pogovor
s prijateljem, namesto da bi stražil bazen. Spodaj je program, ki za bazen
velikosti
1. podnalogaProgram spremenite tako, da bo hišnik lahko vnesel poljubne dimenzije bazena. Dimenzije so v celih metrih. Uradna rešitev# Vnos dimenzij bazena. dolzina = int(input("Dolžina: ")) sirina = int(input("Širina: ")) globina = int(input("Globina: ")) # Pretvorba dimenzij bazena v dm. dolzina_dm = dolzina * 10 sirina_dm = sirina * 10 globina_dm = globina * 10 # Izračun prostornine bazena v kubičnih dm. prostornina_dm = dolzina_dm * sirina_dm * globina_dm # Vnos pretoka vode v sekundi. prostornina_izteka_v_eni_sekundi = 23 # Izračun časa praznjenja bazena. cas_praznjenja_v_sekundah = prostornina_dm / prostornina_izteka_v_eni_sekundi # Izpis rezultata. print('Bazen velikosti', dolzina, 'm ×', sirina, 'm ×', globina, 'm', 'se bo praznil', cas_praznjenja_v_sekundah, 'sekund.') 2. podnalogaHišnik je zamenjal službo. A tudi tu imajo bazen in hišnik ga mora
spet čistiti. Ves vesel je zagnal svoj program, a je pri merjenju
ugotovil, da je globina bazena Namig: oglejte si, kaj počneta Uradna rešitev# Vnos dimenzij bazena. dolzina = int(input("Dolžina: ")) sirina = int(input("Širina: ")) globina = float(input("Globina: ")) # Pretvorba dimenzij bazena v dm. dolzina_dm = dolzina * 10 sirina_dm = sirina * 10 globina_dm = globina * 10 # Izračun prostornine bazena v kubičnih dm. prostornina_dm = dolzina_dm * sirina_dm * globina_dm # Vnos pretoka vode v sekundi. prostornina_izteka_v_eni_sekundi = 23 # Izračun časa praznjenja bazena. cas_praznjenja_v_sekundah = prostornina_dm / prostornina_izteka_v_eni_sekundi # Izpis rezultata. print('Bazen velikosti', dolzina, 'm ×', sirina, 'm ×', globina, 'm', 'se bo praznil', '{:.2f}'.format(cas_praznjenja_v_sekundah), 'sekund.') 3. podnalogaHišnik je z vašim programom sicer zelo zadovoljen, a zadnjič se je pri pretvarjanju sekund v minute uštel in je zato prišel nazaj k bazenu cele pol ure prezgodaj. Zato prosi, če mu namesto časa v sekundah lahko izpišete čas v urah, minutah in sekundah. Tukaj boste morali sekunde iz decimalne oblike pretvoriti v celo število. Ugotovite, kako to storimo v Pythonu. Primer delovanja programa:
Uradna rešitev# Vnos dimenzij bazena. dolzina = int(input("Dolžina: ")) sirina = int(input("Širina: ")) globina = float(input("Globina: ")) # Pretvorba dimenzij bazena v dm. dolzina_dm = dolzina * 10 sirina_dm = sirina * 10 globina_dm = globina * 10 # Izračun prostornine bazena v kubičnih dm. prostornina_dm = dolzina_dm * sirina_dm * globina_dm # Vnos pretoka vode v sekundi. prostornina_izteka_v_eni_sekundi = 23 # Izračun časa praznjenja bazena. cas_praznjenja_v_sekundah = prostornina_dm / prostornina_izteka_v_eni_sekundi sekunde = int(cas_praznjenja_v_sekundah % 60) minute_zacasne = cas_praznjenja_v_sekundah // 60 minute = int(minute_zacasne % 60) ure = int(minute_zacasne // 60) # Izpis rezultata. print('Bazen velikosti', dolzina, 'm ×', sirina, 'm ×', globina, 'm', 'se bo praznil', ure, 'ur', minute, 'minut in', sekunde, 'sekund.')Mesto objave ob koncu projekta 15.9.2018 |